using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using System.Drawing.Imaging;

namespace PlugIn
{


    [Serializable]
    public class Mylabel
    {
        public string name;
        public List<Mypoint> pixels = new List<Mypoint>();
        public string description;
        public Mylabel parent;
        public List<Mylabel> children = new List<Mylabel>();
    }

    [Serializable]
    public struct Mypoint
    {
        public int x;
        public int y;
        public Mypoint(int x, int y)
        {
            this.x = x;
            this.y = y;
        }
    }

    public interface IPlugin
    {
        string Name { get;set;}
        IPluginHost Host { get;set;}
        Bitmap Do(Bitmap pic,List<Mylabel> labelsList,string selectedLabText);
    }


    public interface IPluginHost
    {
        bool Register(IPlugin ipi);
    }
}
